Oc引导,SSDT显卡驱动及改名操作过程记录(单卡及多卡)

您所在的位置:网站首页 oc 教程 Oc引导,SSDT显卡驱动及改名操作过程记录(单卡及多卡)

Oc引导,SSDT显卡驱动及改名操作过程记录(单卡及多卡)

2023-05-14 07:55| 来源: 网络整理| 查看: 265

本帖最后由 wsanbai 于 2020-1-12 12:36 编辑 前言         好几年没折腾黑苹果了,最近不知哪根筋犯抽,把没啥问题的电脑重新捣整一通,该忘的都忘了,基本是重头开始学习。         没有朋友们的分享,我想我自己也是不会去折腾黑苹果的,人人为我,我为人人,现在把自己最近折腾的经历分享出来,主要还是显卡。         我以前也以为显卡很好搞,一个WhateverGreen用了一两年,也不见得有啥大问题,无非就是FCPX卡一点,显卡调用不积极,跑分低点等等。         黑苹果嘛,还是要学会接受它的不完美。论坛里不少朋友系统能用,功能基本健全就急忙吼着:完美!我以前也是这样,而今看来,只是沦为老司机们的笑话了。因为黑苹果永远不会完美,白果都不会,只有降低自己对完美的定义。         我这只是自己折腾显卡的过程记录和分享,它不是一个教程,请不要把这当成一个教程来看。         开始之前我有两个问题,希望能得到高手解答:         我是Z370主板配8086k的CPU,显卡RX580x2,现在停在iMacpro1,1机型,开启核显加速并打了缓冲帧补丁,现在在FCPX使用的时候,核显最高到1.1G这是可以接受的,可一旦开视频或其它对核显调用较低的操作后(比如它们最高调用核显0.4g),FCPX就把核显锁定在0.4g,只有想办法把核显调到1.2g后,FCPX才会恢复1.2g的核显调用,我去掉WhateverGreen或用魔改版本都是这样,这是为何?有解决方案吗?

第一部分 准备工作

1、已安装好的苹果系统

2、备用Clover引导盘

3、IORegistryExplorer/Hackintool/MaciASL/CloverConfigurator

4、备用OC引导盘

第二部分开始

一、提取原始DSDT

1、打开备用Clover引导盘,配置config.plist:

确保ACPI下没有配置任何显卡及HDMI相关参数。确保设备设置下没有配置任何设备属性和防冒ID以及HDMI确保显卡设置项没有作何勾选

也就是说不要让clover对原始DSDT有作何更改即可

2、重启电脑,以备用Clover引导盘引导,在引导界面按F4键提取原始DSDT文件。提取后的文件存放于Clover的ACPI文件夹内的origin文件夹,将所有备份至桌面备用。

二、确定显卡位置

1、打开Hackintool,转到PCI选项,找到显卡设备。我以自己的Z68主板,GTX580显卡为例如下图:

得到显卡位置在“PCI0.PEG0.GFX0”

2、也可开打IORegistryExplorer,查找display,得到显止位置

位置与Hackintool相同,注意其中的AppleACPIPIC是驱动程序,IOPP是PCI桥接,这两个不是设备,将其去除,得到路径为“PCI0@0-PEG0@1-GFX0@0”。这个路径后面都带有@0或@1或其它什么,应该是表示设备地址,也需要记下,后面用的到。

主板不同和显卡插槽不同,相应得到的路径不同,名称也不不同。我两块RX580插在不同的插槽,每块显卡得到的位置完全不一样。

如果是两显卡或者三块/四块显卡,最好是一次把一块显卡插在自己的插槽上,一块一块的确认显卡路径。做好了一块显卡后再做下一块显卡,也许同时插上也不一定会有什么问题,但为了保险起见,最好一块一块的做。

有条件的话,在进行确认显卡路径的时候最好使用备用clover引导,去掉显卡有关的kexts(如whatevergreen等),以确保没有对原始路径进行过patch或变更。

三、SSDT准备

进入桌面的原始DSDT文件夹,用MaciASL打开DSDT.aml,查找GFX0的上级PEG0(不要查找GFX0):

查找结果前面带“Device”的才是需要的结果。我的在PEG0下只有一个PEGP设备(根据不板不可这下面可能有多个设备),点击PEGP设备,看到代码如下:

回去看取得的路径“PCI0@0-PEG0@1-GFX0@0”,后面的PEG0@1就和PEG0下面的“Name(_ADR,0x00010000)”相对应,记下这个显卡插槽设备的参数。

我们要重新仿冒个设备来代替它,所以要对这个PEGP禁用。由于我只有这个Z68主板和Z370主板,这两块主板在显卡插槽里都只有一个PEGP,如果你的主板有多个设备,就把它们都禁用(因为要在PEG0里插显卡,除了显卡我还没想到有其它什么设备)。确定好要被禁用的设备把它们列出来,比如我要禁用的设备就是这个_SB.PCI0.PEG0.PEGP。

四、显卡DSDT制作

前面的三步有以下两个目的:

1、找到显卡位置:_SB.PCI0.PEG0(主板不同结果可能不同)

2、显卡插槽地址:Name (_ADR,0x00010000)

3、找到要禁用设备:_SB.PCI0.PEG0.PEGP(主板不同结果可能不同)

下面就要建立DSDT来代替原显卡位置并禁用不需要的设备:

1、建立显卡SSDT

   下载范本ssdt-rx580.aml对其进行修改。

   打开下载的文件,查找“_SB.PCI0.PEG0.GFX0”用自己找到的显卡位置替换,“_SB.PCI0.PEG0”换成你的显卡位置,GFX0可以换成作何你想要的名字。比如通过上面步骤找到的显卡位置为“_SB.PCI0.ABCD”,并想给显卡重新取名为“XXX0”,那么就把“_SB.PCI0.PEG0.GFX0”改成“_SB.PCI0.ABCD.XXX0”。如果更换了“GFX0”,就要把所有的GFX0替换成新名称。

前面取得插槽地址:Name (_ADR,0x00010000),找到ssdt-rx580.aml文件中的DefinitionBlock("", "SSDT", 1, "shiloh", "GFX0",0x00010000),把0x00010000改成与插槽地址相同,附件是我改好的,所以都是0x00010000(我不确定我这个理解是否正确,但我这么操作是没有问题的)。

附件是RX580显卡注入FBName并改名Radeon Pro 580X,如果显卡不同,则需要更改显卡SSDT内容。这不是一个教程,我没能力提供所有显卡的SSDT,请自己搜索制作,经我自己深度,需要注意的是:

确定正确的FB Name,否则显卡输出接口会工作不正常,多尝试connector-type修改不会有效,反而会丢失功能集,不改名无视很多显卡论坛里都有现成的参数,直接搬过来调试即可

2、禁用不需要的设备

我要禁用的设备是:_SB.PCI0.PEG0.PEGP,打开ssdt-rx580.aml,找到里面的:“Name(_SB.PCI0.PEG0.PEGP._STA, Zero)”,把其中的“_SB.PCI0.PEG0.PEGP”替换成自己需禁用的设备路径,如有多个设备需要禁用,就多复制几份并更改路径,像这样:

Name(_SB.PCI0.PEG0.PEGP._STA, Zero)

Name (_SB.PCI0.RP21.PXSX._STA,Zero)

至此,显卡SSDT即修改完成,进入下一步。

五、OC操作

1、把制作好的SSDT放进备用OC引导盘的ACPI文件夹,并在OC的config.plist配置加入。如果多显卡,要分别对它们全部加入。

2、暂时禁用Whatevergreen.kext,开核显的话在oc配置文件config.plist的acpi->patch里加入gfx0 to igpu重命名,对核显重命名为IGPU。没核显不用管它。

3、删除设备属性里对于独显的作何配置(集显的防冒别动)。

4、如果因为去掉Whatevergreen.kext进不了系统,给启动参数加上:

  

-disablegfxfirmware

5、进系统通过对比显卡SSDT与新显卡名称及位置,没问题完成OC迁移。

六、总结

通过以上方法,我对自己两台电脑实际操作,没有任何问题。

1、Z370+I78086K+2 x RX580使用此方法制作两张显卡的ssdt后,RX580的Geekbench5.1跑分每张卡有所提高,OC引导进WIN10不受作何影响。但是我的去掉WhateverGreen后,第二引导阶段会丢失hidpi,懒得折腾了,所以我又把WhateverGreen加进去了,对本操作结果没有影响。如谁有解决办法请告知!

2、P8z68+I72600K+GTX580实现了独显+集显双显驱动并能硬解H264(HEVC硬解这个平台是不支持的),系统版本10.13.6,引导工具clover。

七、后记

我的显卡是蓝宝石RX580超白金OC,在win10内可通过官方软件自动超频,但在Macos下不知道怎么注入PowerTable,所以决定采用修改显卡bios的办法。

进入Win10,使用官方软件自动超频,并导出配置文件使用ATIWinFlash导出显卡bios打开PolarisBiosEditor,导入bios,并结合官方配置文件调整参数使用ATIWinFlash刷入修改bios 本方法过程虽然简单,但还是有一定的风险,有经验者自行尝试。

八、申明

此方法是我在自己电脑的操作成功的记录,由于黑苹果的特殊性,我不敢保证你如果也这么操作会百分之百成功,尽可能抱着一颗感恩的心来对待。

最近开始折腾oc的时候,在本论坛下载了个0.5.3版本,结果死活引导不了,后来才发现他的BootX64.efi有问题,从官方下载就没有问题了。当时很想骂娘,可转过来想,还不是因为自己懒,不怪别人。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3